package com.huawei.esdk.uc.jna;

import com.huawei.esdk.uc.jna.callback.AVSessAddedCB;
import com.huawei.esdk.uc.jna.callback.AVSessionClosedCB;
import com.huawei.esdk.uc.jna.callback.AVSessionConnectedCB;
import com.huawei.esdk.uc.jna.callback.ClientSignInNotifyCB;
import com.huawei.esdk.uc.jna.callback.ConfMemberEventCB;
import com.huawei.esdk.uc.jna.callback.PhoneJointEventCB;
import com.huawei.esdk.uc.jna.callback.StatusChangedCB;
import com.huawei.esdk.uc.jna.callback.VideoCallEventCB;
import com.sun.jna.Library;
import com.sun.jna.Pointer;
import com.sun.jna.ptr.IntByReference;

/**
 * JNA封装UCService的接口
 * @author lWX169831
 * 
 */
public interface UCServiceLibrary extends Library
{

    // ********************* 初始化与反初始化 *********************************

    /**
     *初始化
     * 
     *该函数用于初始化数据
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 登陆前先初始化
     *@par 无
     **/
    public int UC_SDK_Init();

    /**
     *去初始化
     * 
     *该函数用于去初始化数据
     * 
     *@return 0成功
     *@return 非0失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_UnInit();

    // ********************* 登录与登出 *********************************

    /**
     *登录
     * 
     *该函数用于使用账号和密码登陆
     * 
     *@param[in] account 账号
     *@param[in] pwd 密码
     *@param[in] internalurl uri
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 登陆前先初始化
     *@par 无
     **/
    public int UC_SDK_SignInByPWD(String account, String pwd, String serverUrl,
            String langID);

    /**
     *登出
     * 
     *该函数用于注销登陆
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_SignOut();

    /**
     *设置登录回调
     * 
     *该函数用于设置登录回调函数
     * 
     *@param[in] loginEventCB_ 登陆回调函数指针
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 登陆前必须调用
     *@par 无
     **/
    public int UC_SDK_SetLoginEventCB(ClientSignInNotifyCB loginEventCB);

    /**
     *设置状态回调
     * 
     *该函数用于设置状态回调函数
     * 
     *@param[in] statusChangedCallBack 状态回调函数指针
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 登陆前必须调用
     *@par 无
     **/
    public int UC_SDK_SetStatusChangedCB(StatusChangedCB statusChangedCallBack);

    /**
     *订阅某个联系人状态
     * 
     *该函数用于订阅某个联系人状态
     * 
     *@param[in] _Account 联系人账户
     *@return 0 成功
     *@return 非 失败（参考错误返回码）
     *@attention 登录成功后调用
     *@par 无
     **/
    public int UC_SDK_SubscribeStatus(String account);

    /**
     *取消订阅某个联系人状态
     * 
     *该函数用于取消订阅某个联系人状态
     * 
     *@param[in] _Account 联系人账户
     *@return 0 成功
     *@return 非 失败（参考错误返回码）
     *@attention 登录成功后调用
     *@par 无
     **/
    public int UC_SDK_UnSubscribeStatus(String account);

    /**
     *获取联系人状态
     * 
     *该函数用于获取联系人个人状态
     * 
     *@param[in] _AccountType联系人账户类型
     *@param[in] _Account 联系人账户
     *@param[out] _Status 状态
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 登录成功后调用
     *@par 无
     **/
    public int UC_SDK_GetContactStatus(int accountType, String account,
            IntByReference status);

    /**
     *获取联系人信息
     * 
     *该函数用于获取联系人信息
     * 
     *@param[in] _Account 联系人账户
     *@param[out] _pContactInfo 联系人的信息
     *@return 0 成功
     *@return 非 失败（参考错误返回码）
     *@attention 登录成功后调用
     *@par 无
     **/
    public int UC_SDK_GetContactInfo(String account, Pointer pContactInfo);

    /**
     *发布状态
     * 
     *该函数用于发布个人状态
     * 
     *@param[in] _Status 状态
     *@param[in] _Desc 状态描述
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 登陆后立即调用
     *@par 无
     **/
    public int UC_SDK_PubSelfStatus(int dtatus, String desc);

    // ********************* 呼叫部分 *********************************

    /**
     *设置呼叫事件回调
     * 
     *该函数用于设置呼叫事件回调函数
     * 
     *@param[in] aVSessionClosedCallBack 通话结束事件回调函数指针
     *@param[in] aVSessionConnectedCallBack 通话连接事件回调函数指针
     *@param[in] aVSessAddedCallBack 收到呼叫事件回调函数指针
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 登陆后立即调用
     *@par 无
     **/
    public int UC_SDK_SetCallEventCallBack(
            AVSessionClosedCB aVSessionClosedCallBack,
            AVSessionConnectedCB aVSessionConnectedCallBack,
            AVSessAddedCB aVSessAddedCallBack);

    /**
     *设置视频呼叫事件回调
     * 
     *该函数用于设置视频呼叫事件回调函数
     * 
     *@param[in] callEventCallBack 视频通话事件回调函数指针
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 登陆后立即调用
     *@par 无
     **/
    public int UC_SDK_SetVideoCallEventCallBack(
            VideoCallEventCB callEventCallBack);

    /**
     *设置会议中事件回调
     * 
     *该函数用于设置会议中成员状态变化事件回调
     * 
     *@param[in] confMemEventCallBack
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 送到连接成功函数返回后调用
     *@par 无
     **/
    public int UC_SDK_SetConfMemEventCallBack(
            ConfMemberEventCB confMemEventCallBack);

    /**
     *增加呼叫成员
     * 
     *该函数用于设置发起呼叫的目标用户
     * 
     *@param[in] memberType 成员类型
     *@param[in] member UC账号或者ipphone
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 当同时呼叫多个用户时，请重复调用多次，然后调用发起呼叫接口
     *@par 无
     **/
    public int UC_SDK_AddCallMember(int memberType, String member);

    /**
     *发起呼叫
     * 
     *该函数用于发起账户呼叫
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 呼叫前先增加呼叫成员
     *@par 无
     **/
    public int UC_SDK_MakeCall();

    /**
     *结束通话
     * 
     *该函数用于结束通话释放conversation，释放UC_SDK_InsertMember增加的成员
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 主动挂断通话时调用（对方挂断时会自动调用释放资源）
     *@par 无
     **/
    public int UC_SDK_HangupCall();

    /**
     *结束视频通话
     * 
     *该函数用于结束视频通话，保留语音通话
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 主动挂断视频通话时调用（）
     *@par 无
     **/
    public int UC_SDK_HangupVideoCall();

    /**
     *接听呼叫
     * 
     *该函数用于接听呼叫
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_AcceptCall();

    /**
     *接听视频呼叫
     * 
     *该函数用于接听视频呼叫
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_AcceptVideoCall(int localHWnd, int localLeft,
            int localTop, int localWidth, int localHeight, int remoteHWnd,
            int remoteLeft, int remoteTop, int remoteWidth, int remoteHeight);

    /**
     *拒绝呼叫
     * 
     *该函数用于拒绝呼叫
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_RejectCall();

    /**
     *拒绝视频呼叫
     * 
     *该函数用于拒绝视频呼叫
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_RejectVideoCall();

    /**
     *发起视频呼叫或者将当前语音呼叫升级为视频呼叫
     * 
     *该函数用于发起视频呼叫或者将当前语音呼叫升级为视频呼叫
     * 
     *@param[in] stLocalWnd 本地窗口
     *@param[in] stRemoteWnd 对方窗口
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_MakeVideoCall(int localHWnd, int localLeft, int localTop,
            int localWidth, int localHeight, int remoteHWnd, int remoteLeft,
            int remoteTop, int remoteWidth, int remoteHeight);

    /**
     *语音会议中邀请成员
     * 
     *该函数用于语音会议中邀请成员
     * 
     *@param[in] memberType_ 账户类型，参考枚举类型EM_MemberType
     *@param[in] pAccount 账号
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 暂无
     *@par 无
     **/
    public int UC_SDK_InviteMemberInCall(int memberType_, String pAccount);

    /**
     *语音会议中删除成员
     * 
     *该函数用于语音会议中删除成员
     * 
     *@param[in] memberType_ 账号类型，参考枚举类型EM_MemberType
     *@param[in] pAccount 账号
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 暂无
     *@par 无
     **/
    public int UC_SDK_DeleteMemberInCall(int memberType, String pAccount);

    /**
     *查询呼叫成员
     * 
     *该函数用于查询呼叫成员的账户
     * 
     *@param[in] phoneNum phone number
     *@param[out] UCAcc UC成员账户名称
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 增加账户时，先查询此用户是否存在对应的UC账户
     *@par 无
     **/
    public int UC_SDK_GetUCAccount(String phoneNum, byte[] UCAcc);

    /**
     *通话保持
     * 
     *该函数用于通话保持
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_HoldCall();

    /**
     *通话恢复
     * 
     *该函数用于通话恢复
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_ResumeCall();

    /**
     *二次拨号
     * 
     *该函数用于二次拨号接口，支持0123456789*#等12个字符
     * 
     *@param[in] tones 拨号字符串
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_SendDTMF(char tone);

    /**
     *呼叫前转
     * 
     *该函数用于呼叫前转
     * 
     *@param[in] iMemberType 成员类型
     *@param[in] pMember UC账号或者ipphone
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_ForwardCall(int iMemberType, String pMember);

    // ***************************** 设备设置
    // ***********************************************

    /**
     *麦克风静音
     * 
     *该函数用于麦克风静音
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_MuteMic();

    /**
     *麦克风取消静音
     * 
     *该函数用于麦克风取消静音
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_UnMuteMic();

    /**
     *获取麦克风音量
     * 
     *该函数用于获取麦克风音量
     * 
     *@param[out] level 麦克风音量
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_GetMicLevel(IntByReference level);

    /**
     *设置麦克风音量
     * 
     *该函数用于设置麦克风音量
     * 
     *@param[in] level 麦克风音量
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_SetMicLevel(int level);

    /**
     *扬声器静音
     * 
     *该函数用于扬声器静音
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_MuteSpker();

    /**
     *扬声器取消静音
     * 
     *该函数用于扬声器取消静音
     * 
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_UnMuteSpker();

    /**
     *获取扬声器音量
     * 
     *该函数用于获取麦克风音量
     * 
     *@param[out] level 扬声器音量
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_GetSpkerLevel(IntByReference level);

    /**
     *设置扬声器音量
     * 
     *该函数用于设置扬声器音量
     * 
     *@param[in] level 扬声器音量
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_SetSpkerLevel(int level);

    /**
     *获取麦克风设备列表
     * 
     *该函数用于获取麦克风设备列表
     * 
     *@param[in] _fromIndex 开始索引
     *@param[in] _toIndex 结束索引
     *@param[in] _size 结构体大小
     *@param[out] devList 设备列表
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention [_fromIndex, _toIndex], 包含_fromIndex, _toIndex
     *@par 无
     **/
    public int UC_SDK_GetMicDevList(int fromIndex, int toIndex, int size,
            Pointer devList);

    /**
     *获取扬声器设备列表
     * 
     *该函数用于获取扬声器设备列表
     * 
     *@param[in] _fromIndex 开始索引
     *@param[in] _toIndex 结束索引
     *@param[in] _size 结构体大小
     *@param[out] devList 设备列表
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention [_fromIndex, _toIndex], 包含_fromIndex, _toIndex
     *@par 无
     **/
    public int UC_SDK_GetSpeakerDevList(int fromIndex, int toIndex, int size,
            Pointer devList);

    /**
     *获取视频设备列表
     * 
     *该函数用于获取视频设备列表
     * 
     *@param[in] _fromIndex 开始索引
     *@param[in] _toIndex 结束索引
     *@param[in] _size 结构体大小
     *@param[out] devList 设备列表
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention [_fromIndex, _toIndex], 包含_fromIndex, _toIndex
     *@par 无
     **/
    public int UC_SDK_GetVideoDevList(int fromIndex, int toIndex, int size,
            Pointer devList);

    /**
     *获取当前麦克风设备
     * 
     *该函数用于获取当前麦克风设备
     * 
     *@param[out] device 当前麦克风设备
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 暂无
     *@par 无
     **/
    public int UC_SDK_GetCurrentMicDev(Pointer device);

    /**
     *获取当前扬声器设备
     * 
     *该函数用于获取当前扬声器设备
     * 
     *@param[out] device 当前扬声器设备
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 暂无
     *@par 无
     **/
    public int UC_SDK_GetCurrentSpeakerDev(Pointer device);

    /**
     *获取当前视频设备
     * 
     *该函数用于获取当前视频设备
     * 
     *@param[out] device 当前视频设备
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 暂无
     *@par 无
     **/
    public int UC_SDK_GetCurrentVideoDev(Pointer device);

    /**
     *设置当前麦克风设备
     * 
     *该函数用于设置当前麦克风设备
     * 
     *@param[in] index 设备索引
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 暂无
     *@par 无
     **/
    public int UC_SDK_SetCurrentMicDev(int index);

    /**
     *设置当前扬声器设备
     * 
     *该函数用于设置当前扬声器设备
     * 
     *@param[in] index 设备索引
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 暂无
     *@par 无
     **/
    public int UC_SDK_SetCurrentSpeakerDev(int index);

    /**
     *设置当前视频设备
     * 
     *该函数用于设置当前视频设备
     * 
     *@param[in] index 设备索引
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 暂无
     *@par 无
     **/
    public int UC_SDK_SetCurrentVideoDev(int index);

    // ********************* 话机联动 *********************************

    /**
     *获取话机联动设备类型
     * 
     *该函数用于获取话机联动设备类型
     * 
     *@param[out] _iDevType 联动设备类型
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_GetPhoneJointDevType(IntByReference iDevType);

    /**
     *设置话机联动设备类型
     * 
     *该函数用于设置话机联动设备类型
     * 
     *@param[in] _iDevType 联动设备类型
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_SetPhoneJointDevType(int iDevType);

    /**
     *设置话机联动事件回调
     * 
     *该函数用于设置话机联动事件回调函数
     * 
     *@param[in] pjEventCallBack 话机联动事件回调函数指针
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 登陆后立即调用
     *@par 无
     **/
    public int UC_SDK_SetPhoneJointEventCallBack(
            PhoneJointEventCB pjEventCallBack);

    // ********************* 历史记录 *********************************

    /**
     *查询单人呼叫历史记录
     * 
     *该函数查询单人呼叫历史记录
     * 
     *@param[in] _callType
     *@param[in] _fromIndex
     *@param[in] _toIndex
     *@param[out] _result
     *@param[out] _size 指针_result所指内存的大小
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 送到连接成功函数返回后调用
     *@par 无
     **/
    public int UC_SDK_QueryCallHistory(int callType, int fromIndex,
            int toIndex, Pointer result, int size);

    /**
     *清除单人呼叫历史记录
     * 
     *该函数清除单人呼叫历史记录
     * 
     *@param[in] _callType
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 送到连接成功函数返回后调用
     *@par 无
     **/
    public int UC_SDK_ClearCallHistroy(int callType);

    /**
     *插入呼叫历史记录
     * 
     *该函数用于插入呼叫历史记录
     * 
     *@param[in] _callType
     *@param[in] _account
     *@param[in] _name
     *@param[in] _duration
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 送到连接成功函数返回后调用
     *@par 无
     **/
    public int UC_SDK_InsertCallHistory(int callType, String account,
            String name, int duration);

    /**
     *删除一条呼叫记录
     * 
     *该函数用于删除一条呼叫记录
     * 
     *@param[in] _iRcdID 删除记录索引
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_DeleteCallHistory(int iRcdID);

    /**
     *查询会议历史记录
     * 
     *该函数会议历史记录
     * 
     *@param[in] _fromIndex 开始序列
     *@param[in] _toIndex 结束序列
     *@param[out] _result 返回的会议历史记录结果
     *@param[out] _size 指针_result所指内存的大小
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_QueryConvHistory(int fromIndex, int toIndex,
            Pointer result, int size);

    /**
     *查询一条会议历史记录的参与者
     * 
     *该函数用于查询一条会议历史记录的参与者
     * 
     *@param[in] _convID 会议历史记录ID，由UC_SDK_QueryConvHistory接口查询出来
     *@param[in] _fromIndex 开始序列
     *@param[in] _toIndex 结束序列
     *@param[out] _result 返回的结果存放地址
     *@param[out] _size 指针_result所指内存的大小
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 
     *            调用UC_SDK_QueryConvHistory后，会获取到_convID，然后可以调用UC_SDK_QueryHisConvPartByID
     *@par 无
     **/
    public int UC_SDK_QueryHisConvPartByID(String convID, int fromIndex,
            int toIndex, Pointer result, int size);

    /**
     *插入会议历史记录
     * 
     *该函数用于插入会议历史记录
     * 
     *@param[in] _leaderAccount 主持人账户
     *@param[in] _leaderName 主持人姓名
     *@param[in] _duration 会议持续时间
     *@param[out] _historyID 会议历史记录ID
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_InsertConvHistory(String leaderAccount,
            String leaderName, int duration, byte[] historyID);

    /**
     *插入会议历史记录的与会人
     * 
     *该函数用于插入会议历史记录的与会人
     * 
     *@param[in] _partAccount 与会者账户
     *@param[in] _partName 与会者姓名
     *@param[in] _historyConvID 会议历史记录ID，调用UC_SDK_InsertConvHistory生成
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 调用UC_SDK_InsertConvHistory后，获取到_historyConvID，
     *            然后可以调用UC_SDK_InsertConvHistoryPart插入成员
     *@par 无
     **/
    public int UC_SDK_InsertConvHistoryPart(String historyConvID,
            String partAccount, String partName);

    /**
     *删除一条会议记录
     * 
     *该函数用于删除一条会议记录
     * 
     *@param[in] _pConvID 删除会议历史记录的ID
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 无
     *@par 无
     **/
    public int UC_SDK_DeleteConvHistory(String pConvID);

    /**
     *包括语音会议中断开某成员的语音，语音会议中重新呼叫某成员，语音会议中对某成员静音，对某成员取消静音4种。
     * 
     *该函数用于包括语音会议中断开某成员的语音，语音会议中重新呼叫某成员，语音会议中对某成员静音，对某成员取消静音4种。
     * 
     *@param[in] operateType 操作类型，参考枚举类型EM_ConvnerOperateType
     *@param[in] memberType_ 账号类型，参考枚举类型EM_MemberType
     *@param[in] pAccount UC账号
     *@return 0 成功
     *@return 非0 失败（参考错误返回码）
     *@attention 暂无
     *@par 无
     **/
    public int UC_SDK_ModifyMemberStatusInCall(int operateType, int memberType,
            String pAccount);
    
    /**
     *单点登录个人管理平台或者预约会议页面
     * 
     *该函数用于单点登录个人管理平台或者预约会议页面
     *
     *@param[in]    _type       打开页面的类型，参考枚举类型EM_PortalType
     *@return       0   成功
     *@return       非0  失败（参考错误返回码）
     *@attention    登陆后立即调用
     *@par          无
    **/
    public int UC_SDK_OpenPortal(int pageType);

}
